#Keiser Guttman for kPCA and PCA
setClass("KGDimChooser",contains="PCADimChooser",
		prototype=prototype(
				.description="Keiser Guttman DimChooser"
		)
)
#general functions
keiserGuttman <- function(.Object,reducer,...) {
	mean <- mean(reducer@.eigenValues[which(reducer@.eigenValues>0)])
	return(as.integer(length(which(reducer@.eigenValues>mean))))
}
#methods
setMethod("chooseBest",
		signature=c("KGDimChooser","PCAReducer"),
		definition= keiserGuttman
		)
		

setMethod("chooseBest",
		signature=c("KGDimChooser","kPCAReducer"),
		definition= keiserGuttman
		)
		
